2.3 エミュレータ
以下はファイルsample.vsmに手書きした命令列をアセンブルし、エミュレータで実行する例である。 assemble3およびgpfn3_package_mainにPATHが通っている前提とする。
d get命令で読み出した値は-dオプションで指定したファイルに出力される。 よってファイルsample.dmpには、PE番号に対応して 0 から 3 の値が書き込まれることとなる。 コンピュータプログラムの実行を抽象化した概念モデルClaude.icon
アセンブリ言語は低水準のプログラミング言語で、機械語に非常に近い形式で書かれていますClaude.icon
通常はシステムやプログラムの状態をキャプチャしたデバッグ情報を含むファイルを指します。Claude.icon
この場合、特定のハードウェアやソフトウェアコンポーネントの状態をデバッグ目的で記録したものだと考えられます。
$ cat sample.vsm
code:sample.vsm
lpassa $subpeid $lm
d get $lm0n0c0b0m0 1
$ assemble3 sample.vsm > sample.asm
$ gpfn3_package_main -i sample.asm -d sample.dmp
$ cat sample.dmp
code:sample.dmp
DEBUG-LM0(n0c0b0m0p0,0):(f:0,i:{{0x0,0x0},{0x0,0x0}},v:0x0) #d get $lm0n0c0b0m0 1 DEBUG-LM0(n0c0b0m0p1,0):(f:0,i:{{0x0,0x0},{0x0,0x1}},v:0x1) #d get $lm0n0c0b0m0 1 DEBUG-LM0(n0c0b0m0p2,0):(f:0,i:{{0x0,0x0},{0x0,0x2}},v:0x2) #d get $lm0n0c0b0m0 1 DEBUG-LM0(n0c0b0m0p3,0):(f:0,i:{{0x0,0x0},{0x0,0x3}},v:0x3) #d get $lm0n0c0b0m0 1